package cn.bonoon.kernel.security;

/**
 * 账号代管接口，可用于代管他人的账号
 * 
 * 注意：目前是全权代管
 * @author jackson
 *
 */
public interface LogonUserProxyable extends LogonUser{

	/** 当前正在操作的用户 */
	LogonUser getSourceUser();
	
	/** 当前登录的用户 */
	LogonUser getLogonUser();
	
	/** 代理指定的用户 */
	void proxy(LogonUser source);
	
	/** 重置代理，即使用当前登录用户来处理数据 */
	void reset();
	
	/** 表示当前的用户是否正在代理的用户 */
	boolean isActing();
	
	/** 表示当前用户是否可代理其它处理其它账号 */
	boolean isProxyable();
	
	/** 把当前登录的可代管的用户设置为代管过期，这样就不能再代管其他人的账号 */
	void overdued();
}
